import 'dart:io' show Platform;
import 'package:flutter/foundation.dart' show kIsWeb;

/// 平台检测工具类
class PlatformDetector {
  /// 检测是否为Web平台
  static bool isWeb() {
    return kIsWeb;
  }

  /// 检测是否为移动端（Android或iOS）
  static bool isMobile() {
    if (kIsWeb) return false;
    return Platform.isAndroid || Platform.isIOS;
  }

  /// 检测是否为桌面端（Windows、macOS或Linux）
  static bool isDesktop() {
    if (kIsWeb) return false;
    return Platform.isWindows || Platform.isMacOS || Platform.isLinux;
  }

  /// 检测是否为Windows平台
  static bool isWindows() {
    if (kIsWeb) return false;
    return Platform.isWindows;
  }

  /// 检测是否为macOS平台
  static bool isMacOS() {
    if (kIsWeb) return false;
    return Platform.isMacOS;
  }

  /// 检测是否为Linux平台
  static bool isLinux() {
    if (kIsWeb) return false;
    return Platform.isLinux;
  }

  /// 检测是否为Android平台
  static bool isAndroid() {
    if (kIsWeb) return false;
    return Platform.isAndroid;
  }

  /// 检测是否为iOS平台
  static bool isIOS() {
    if (kIsWeb) return false;
    return Platform.isIOS;
  }

  /// 获取平台名称
  static String getPlatformName() {
    if (kIsWeb) return 'Web';
    if (Platform.isWindows) return 'Windows';
    if (Platform.isMacOS) return 'macOS';
    if (Platform.isLinux) return 'Linux';
    if (Platform.isAndroid) return 'Android';
    if (Platform.isIOS) return 'iOS';
    return 'Unknown';
  }
}
